Simultaneous sharing of storage drives on blade center

ABSTRACT

A method and system in accordance with the present invention provides a microprocessor on each blade server for providing interfaces at the plurality of blade servers for simultaneous connection with a local or remote drive. The microprocessor can also configure the blade server to simultaneously connect with a plurality of local and/or remote drives. The microprocessor routes data packets between a management system and its respective blade server, while a management module in the management system manages the simultaneous access of the drive(s) by the plurality of blade servers or the plurality of drives by a blade server. This increases the efficiency of the system.

FIELD OF THE INVENTION

The present invention relates to blade centers, and more particularly,to the sharing of storage drives on blade centers.

BACKGROUND OF THE INVENTION

Blade servers are known in the art. For example, a Blade Center providedby International Business Machines Corporation™ comprises fourteenindependent blade servers, connected across a backplane through anEthernet switch. FIG. 1 illustrates a conventional Blade Center. TheBlade Center comprises a plurality of blade servers 102 a-102 c managedby a management system 104. The blade servers 102 a-102 c and themanagement system 104 communicate via a bus according to the VirtualLocal Area Network (VLAN) protocol. The management system 104 comprisesan Ethernet switch 106 and a management module 108. The managementmodule 108 manages communication between the blade servers 102 a-102 cor between the blade servers 102 a-102 c and an Ethernet network 110.The Ethernet switch 106 routes packets between the management module 108and the appropriate blade server 102 a-102 c, or between the Ethernetnetwork 110 and the appropriate blade server 102 a-102 c.

However, with the conventional Blade Center, only one of the bladeservers 102 a-102 c can connect with a local drive 112 or a remote drive114 at a time. For a different blade server to connect with the local112 or remote 114 drive, the blade server currently connected must firstbe disconnected. This is inefficient and cumbersome.

Accordingly, there exists a need for a method and system for providingsimultaneous connection between at least one drive and at least oneblade server. The method and system should allow a plurality of bladeservers to simultaneously connect with one or more drives. It shouldalso allow the same drive to simultaneously connect with a plurality ofblade servers. The present invention addresses such a need.

SUMMARY OF THE INVENTION

A method and system in accordance with the present invention provides amicroprocessor on each blade server for providing interfaces at theplurality of blade servers for simultaneous connection with a local orremote drive. The microprocessor can also configure the blade server tosimultaneously connect with a plurality of local and/or remote drives.The microprocessor routes data packets between a management system andits respective blade server, while a management module in the managementsystem manages the simultaneous access of the drive(s) by the pluralityof blade servers or the plurality of drives by a blade server. Thisincreases the efficiency of the system.

BRIEF DESCRIPTION OF THE FIGURES

FIG. 1 illustrates a conventional Blade Center.

FIG. 2 illustrates a preferred embodiment of a system for providingsimultaneous connection between at least one drive and at least oneblade server in accordance with the present invention.

FIG. 3 is a flowchart illustrating a preferred embodiment of a methodfor providing simultaneous connection between at least one drive and aplurality of blade servers in accordance with the present invention.

FIG. 4 illustrates in more detail a preferred embodiment of a system forproviding simultaneous connection between at least one drive and aplurality of blade servers in accordance with the present invention.

FIG. 5 is a flowchart illustrating in more detail the method forproviding simultaneous connection between at least one local drive and aplurality of blade servers in accordance with the present invention.

FIG. 6 is a flowchart illustrating the method for providing simultaneousconnection between at least one remote drive and a plurality of bladeservers in accordance with the present invention.

FIG. 7 is a flowchart illustrating a preferred embodiment of a methodfor simultaneous connection between at least one blade server and aplurality of drives in accordance with the present invention.

FIG. 8 is a flowchart illustrating in more detail the method forproviding simultaneous connection between at least one blade server anda plurality of drives in accordance with the present invention.

DETAILED DESCRIPTION

The present invention provides a method and system for providingsimultaneous connection between at least one drive and at least oneblade server. The following description is presented to enable one ofordinary skill in the art to make and use the invention and is providedin the context of a patent application and its requirements. Variousmodifications to the preferred embodiment will be readily apparent tothose skilled in the art and the generic principles herein may beapplied to other embodiments. Thus, the present invention is notintended to be limited to the embodiment shown but is to be accorded thewidest scope consistent with the principles and features describedherein.

To more particularly describe the features of the present invention,please refer to FIGS. 2 through 8 in conjunction with the discussionbelow.

FIG. 2 illustrates a preferred embodiment of a system for providingsimultaneous connection between at least one drive and at least oneblade server in accordance with the present invention. The systemcomprises a plurality of blade servers 202 a-202 c connected to amanagement system 204 in the backplane. The management system 204comprises a switch 206 and a management module 208. At least one localdrive 212 can be coupled to the management module 208. At least oneremote drive 214 can also be coupled to the management module 208through a network 210 and the switch 206. The management module 208manages the communications among the blade servers 202 a-202 c, as wellas between the blade servers 202 a-202 c and the drives connected to thesystem, including both the local and remote drives 212 and 214. In thepreferred embodiment, the local 212 and/or the remote drive 214 arestorage drives, such as CDROM drives or diskette drives. Other types ofdrives may be possible.

Each blade server 202 a-202 c comprises a microcontroller 216, a hotpluggable bus host controller 218, and a hot pluggable bus 220. The hostcontroller 218 provides an interface to other components of its bladeserver. The microcontroller 216 routes data packets between themanagement system 204 and the host controller 218 via the switch 206.The microcontroller 216 is also capable of configuring an interface forthe host controller 218 to communicate with the local drive 212 orremote drive 214. Because this functionality resides independently oneach blade server 202 a-202 c, a plurality of blade servers can connectsimultaneously with the same drive. Similarly, each blade 202 a-202 cserver can simultaneously connect with a plurality of drives.

FIG. 3 is a flowchart illustrating a preferred embodiment of a methodfor providing simultaneous connection between at least one drive and aplurality of blade servers in accordance with the present invention.First, a plurality of blade servers 202 a-202 c are configured tosimultaneously connect with at least one drive coupled to the managementsystem 204, via step 302. The drive(s) can be either the local drive 212and/or the remote drive 214. In the preferred embodiment, themicroprocessor 216 for the plurality of blade servers 202 a-202 cconfigures the interfaces to their respective host controllers 218 forconnection with the local drive 212 and/or the remote drive 214. Themicroprocessor 216 for each blade server routes data packets between themanagement system 204 and the host processor 218. Then, the managementsystem 204, and more particularly the management module 208, manages theshared access to the drive(s) for the plurality of blade servers 202a-202 c, via step 304.

FIG. 4 illustrates in more detail a preferred embodiment of a system forproviding simultaneous connection between at least one drive and aplurality of blade servers in accordance with the present invention. Inthis preferred embodiment, the switch 206 is an Ethernet switch 406,which communicates with a plurality of blade servers 402 a-402 c via anEthernet chip 416 on each blade server 402 a-402 c according to theVirtual Local Area Network (VLAN) standard. The VLAN standard is knownin the art and will not be described here. The functions of themicroprocessor 216 are performed by a digital signal processor (DSP) 408and a device chip 410 on each blade server 402 a-402 c. The hotpluggable bus 220 is a Universal Serial Bus (USB) 418. In the preferredembodiment, the host controller 412 resides on an Input/Output (I/O)bridge 414. The DSP 408 routes data packets between the managementsystem 404 and device chip 410. The DSP 408 configures the device chip410 of its blade server to present the interface for the local drive 212and/or the remote drive 214 to the host controller 412. Alternatively,the function of the DSPs 408 can be performed by a chip (not shown) atthe management system 404. Because each blade server 402 a-402 c has itsown device chip 410, a plurality of blade servers can simultaneouslyconnect with the same drives, and each blade server can simultaneouslyconnect with a plurality of drives.

FIG. 5 is a flowchart illustrating in more detail the method forproviding simultaneous connection between at least one local drive and aplurality of blade servers in accordance with the present invention.First, the management module 208 sends a command to the DSPs 408 on aplurality of blade servers 402 a-402 c to present the local drive(s)212, via step 502. Next, the DSPs 408 configure the respective devicechips 410 on the plurality of blade servers 402 a-402 c to present aninterface for the local drive 212, via step 504. Each device chip 410informs their respective host controllers 412 on the plurality of bladeservers 402 a-402 c that the local drive 212 is connected, via step 506.Each of the plurality of blade servers 402 a-402 b can nowsimultaneously connect with the local drive 212. The management module208 manages the simultaneous access of the local drive 212 by theplurality of blade servers 402 a-402 c, via step 508.

In accessing the local drive 212, a data packet from the local drive 212is sent to the management module 208. The management module 208 sendsthe data packet to the intended blade server via the Ethernet switch406. The Ethernet switch 406 delivers the data packet to the DSP 408 ofthe intended blade server via the Ethernet chip 416 on that bladeserver. The DSP 408 routes the data packet through the device chip 410to the host controller 412 via the previously configured interface forthe local drive 212. Data packets from the blade server to the localdrive 212 travel the same return path.

FIG. 6 is a flowchart illustrating the method for providing simultaneousconnection between at least one remote drive and a plurality of bladeservers in accordance with the present invention. First, the remotesystem (not shown), to which the remote drive 214 is coupled, sends arequest to the management module 208 to connect the remote drive 214 toa plurality of blade servers 404 a-404 c, via step 602. The managementmodule 208 then uploads an applet to the remote system, via step 604, ifthe applet does not already exist on the remote system. The applet isused to establish a connection to the DSPs 408 on the plurality of bladeservers 402 a-402 c, via step 606. The DSPs 408 on the plurality ofblade servers 402 a-402 c configure their respective device chips 410 onthe plurality of blade servers 402 a-402 c to present an interface forthe remote drive 214, via step 608. The device chips 410 inform theirrespective host controllers 412 on the plurality of blade servers 402a-402 c that the remote drive 214 is connected, via step 610. Themanagement module 208 then manages the simultaneous access of the remotedrive 214 by the plurality of blade servers 402 a-402 c, via step 612.

In accessing the remote drive 214, a data packet from the remote drive214 is sent to the Ethernet switch 406 through the connectionestablished by the applet. The Ethernet switch 406 sends the data packetto the management module 208. The management module 208 then sends thedata packet to the intended blade server via the Ethernet switch 406.The Ethernet switch 406 delivers the data packet to the DSP 408 of theintended blade server via the Ethernet chip 416 on that blade server.The DSP 408 routes the data packet through the device chip 410 to thehost controller 412 via the previously configured interface for theremote drive 214. Data packets from the blade server to the remote drive214 travel the same return path.

In accordance with the present invention, a plurality of blade serverscan also simultaneously connect with the same local or remote drive.FIG. 7 is a flowchart illustrating a preferred embodiment of a methodfor simultaneous connection between at least one blade server and aplurality of drives in accordance with the present invention. At leastone blade server is configured to simultaneously connect with aplurality of drives coupled to the management system 204, via step 702.The plurality of drives can be a plurality of local drives 212, aplurality of remote drives 214, or a combination of local drive(s) andremote drive(s). The microprocessor 216 for the blade server(s)configures the interface to its host controller 218 for connection withthe plurality of drives. The microprocessor 216 for the blade server(s)routes data packets between the management system 204 and the pluralityof drives via the switch 206. Then, the management system 204, and moreparticularly the management module 208, manages the shared access to theplurality of drive(s) for the blade server(s), via step 704.

FIG. 8 is a flowchart illustrating in more detail the method forproviding simultaneous connection between at least one blade server anda plurality of drives in accordance with the present invention.Referring to both FIGS. 4 and 8, for the plurality of drives that areremote drives 214, the remote systems (not shown) to which the remotedrives 214 are connected sends requests to the management module 208 toconnect the plurality of remote drives 214 to the blade server(s), viastep 802. The management module 208 uploads an applet to each of theremote systems, via step 804, if the applet does not already exist on aremote system. The applet establishes connections between the DSP(s) 408on the blade server(s) and the plurality of remote drives 214, via step806. For the plurality of drives that are local drives 212, themanagement module 208 sends a command to the DSP(s) 408 on the bladeserver(s) to present the plurality of local drives, via step 808.

Then, the DSP(s) 408 on the blade server(s) configures a device chip(s)410 on the blade server(s) to present a plurality of interfaces for theplurality of local and/or remote drives, via step 810. The devicechip(s) 410 informs the host controller(s) 412 on the blade server(s)that the plurality of local and/or remote drives is connected, via step812. The DSP(s) 408 routes connect/disconnect events of the plurality oflocal and/or remote drives to the device chip 410 so that the interfacescould appear and disappear as appropriate. The management module 208then manages the simultaneous access of the plurality of local and/orremote drives by the blade server(s), via step 814.

A method and system for providing simultaneous access between at leastone drive and a plurality of blade servers have been disclosed. Themethod and system provides a microprocessor on each blade server forproviding interfaces at the plurality of blade servers for simultaneousconnection with a local or remote drive. The microprocessor can alsoconfigure the blade server to simultaneously connect with a plurality oflocal and/or remote drives. The microprocessor routes data packetsbetween a management system and its respective blade server, while amanagement module in the management system manages the simultaneousaccess of the drive(s) by the plurality of blade servers or theplurality of drives by a blade server. This increases the efficiency ofthe system.

Although the present invention has been described in accordance with theembodiments shown, one of ordinary skill in the art will readilyrecognize that there could be variations to the embodiments and thosevariations would be within the spirit and scope of the presentinvention. Accordingly, many modifications may be made by one ofordinary skill in the art without departing from the spirit and scope ofthe appended claims.

1. A method for providing simultaneous access between a storage driveand a plurality of blade servers, the method comprising: configuring theplurality of blade servers to simultaneously connect with the storagedrive, wherein the plurality of blade servers is managed by a managementsystem and the storage drive is coupled to the management system; eachblade server of the plurality of blade servers simultaneously routingdata packets between the management system and the blade server; and themanagement system managing simultaneous access of the plurality of bladeservers to the storage drive, including routing the data packetsreceived from the plurality of blade servers to the storage drive. 2.The method of claim 1, wherein configuring the plurality of bladeservers to simultaneously connect with the storage drive includesconfiguring each of the plurality of blade servers to have a separateinterface for communicating with the storage drive.
 3. The method ofclaim 2, wherein each blade server of the plurality of blade serverssimultaneously routing data packets between the management system andthe blade server includes each blade server routing data packets to andfrom the management system in accordance with a Virtual Local AreaNetwork (VLAN) protocol.
 4. The method of claim 3, wherein the storagedrive is one of a diskette drive or a CDROM drive.
 5. The method ofclaim 3, wherein: the storage drive is a remote storage drive relativeto the management system, the remote storage drive being coupled to aremote system that is in communication with the management systemthrough a network; and the management system managing shared access ofthe plurality of blade servers to the storage drive includes themanagement system uploading an applet to the remote system, the appletestablishing a connection between the remote storage drive and eachblade server of the plurality of blade servers.
 6. A system comprising:a management system; a storage drive connected to the management system;and a plurality of blade servers managed by the management system,wherein each blade server of the plurality of blade servers isconfigured to simultaneously connect with the storage drive and routedata packets between the management system and the blade server, andwherein the management system manages simultaneous access of theplurality of blade servers to the storage drive, including routing thedata packets received from the plurality of blade servers to the storagedrive.
 7. The system of claim 6, wherein each of the plurality of bladeservers is configured to have a separate interface for communicatingwith the storage drive.
 8. The system of claim 7, wherein each bladeserver of the plurality of blade servers simultaneously routes datapackets between the management system and the blade server in accordancewith a Virtual Local Area Network (VLAN) protocol.
 9. The system ofclaim 8, wherein the storage drive is one of a diskette drive or a CDROMdrive.
 10. A computer readable medium encoded with a computer programfor providing simultaneous access between a storage drive and aplurality of blade servers, the computer program comprising computerexecutable instructions for: configuring the plurality of blade serversto simultaneously connect with the storage drive, wherein the pluralityof blade servers is managed by a management system and the storage driveis coupled to the management system; each blade server of the pluralityof blade servers simultaneously routing data packets between themanagement system and the blade server; and the management systemmanaging simultaneous access of the plurality of blade servers to thestorage drive, including routing the data packets received from theplurality of blade servers to the storage drive.
 11. The computerreadable medium of claim 10, wherein the computer executableinstructions for configuring the plurality of blade servers tosimultaneously connect with the storage drive include computerexecutable instructions for configuring each of the plurality of bladeservers to have a separate interface for communicating with the storagedrive.
 12. The computer readable medium of claim 11, wherein thecomputer executable instructions for each blade server of the pluralityof blade servers simultaneously routing data packets between themanagement system and the blade server includes each blade serverrouting data packets to and from the management system in accordancewith a Virtual Local Area Network (VLAN) protocol.
 13. The computerreadable medium of claim 12, wherein the storage drive is one of adiskette drive or a CDROM drive.
 14. The computer readable medium ofclaim 12, wherein: the storage drive is a remote storage drive relativeto the management system, the remote storage drive being coupled to aremote system that is in communication with the management systemthrough a network; and the computer executable instructions for themanagement system managing shared access of the plurality of bladeservers to the storage drive include computer executable instructionsfor the management system uploading an applet to the remote system, andthe applet establishing a connection between the remote storage driveand each blade server of the plurality of blade servers.